rte_devargs.h(3) | DPDK | rte_devargs.h(3) |
NAME¶
rte_devargs.h
SYNOPSIS¶
#include <stdio.h>
#include <rte_dev.h>
Data Structures¶
struct rte_devargs
Macros¶
#define RTE_DEVARGS_KEY_BUS 'bus'
#define RTE_DEVARGS_KEY_CLASS 'class'
#define RTE_DEVARGS_KEY_DRIVER 'driver'
#define RTE_EAL_DEVARGS_FOREACH(busname, da)
Enumerations¶
enum rte_devtype
Functions¶
int rte_devargs_parse (struct rte_devargs *da, const
char *dev)
int rte_devargs_parsef (struct rte_devargs *da, const char
*format,...) __rte_format_printf(2
int void rte_devargs_reset (struct rte_devargs *da)
int rte_devargs_insert (struct rte_devargs **da)
int rte_devargs_add (enum rte_devtype devtype, const char
*devargs_str)
int rte_devargs_remove (struct rte_devargs *devargs)
unsigned int rte_devargs_type_count (enum rte_devtype devtype)
void rte_devargs_dump (FILE *f)
struct rte_devargs * rte_devargs_next (const char *busname,
const struct rte_devargs *start)
Detailed Description¶
RTE devargs: list of devices and their user arguments
This file stores a list of devices and their arguments given by the user when a DPDK application is started. These devices can be PCI devices or virtual devices. These devices are stored at startup in a list of rte_devargs structures.
Definition in file rte_devargs.h.
Macro Definition Documentation¶
#define RTE_DEVARGS_KEY_BUS 'bus'¶
Bus type key in global devargs syntax.
Legacy devargs parser doesn't use this key as bus type is resolved as first optional value separated by ':'.
Definition at line 35 of file rte_devargs.h.
#define RTE_DEVARGS_KEY_CLASS 'class'¶
Class type key in global devargs syntax.
Legacy devargs parser doesn't parse class type. PMD is encouraged to use this key to resolve class type.
Definition at line 43 of file rte_devargs.h.
#define RTE_DEVARGS_KEY_DRIVER 'driver'¶
Driver type key in global devargs syntax.
Legacy devargs parser doesn't parse driver type. PMD is encouraged to use this key to resolve driver type.
Definition at line 51 of file rte_devargs.h.
#define RTE_EAL_DEVARGS_FOREACH(busname, da)¶
Value:
for (da = rte_devargs_next(busname, NULL); da != NULL; da = rte_devargs_next(busname, da)) .fi Iterate over all rte_devargs for a specific bus.
Definition at line 261 of file rte_devargs.h.
Enumeration Type Documentation¶
enum rte_devtype¶
Type of generic device
Definition at line 56 of file rte_devargs.h.
Function Documentation¶
int rte_devargs_parse (struct rte_devargs * da, const char * dev)¶
Parse a device string.
Verify that a bus is capable of handling the device passed in argument. Store which bus will handle the device, its name and the eventual device parameters.
The syntax is:
bus:device_identifier,arg1=val1,arg2=val2
where 'bus:' is the bus name followed by any character separator. The bus
name is optional. If no bus name is specified, each bus will attempt to
recognize the device identifier. The first one to succeed will be used.
Examples:
pci:0000:05.00.0,arg=val 05.00.0,arg=val vdev:net_ring0
Parameters
dev String describing a device.
Returns
- 0 on success.
- Negative errno on error.
int rte_devargs_parsef (struct rte_devargs * da, const char * format, ...)¶
Parse a device string.
Verify that a bus is capable of handling the device passed in argument. Store which bus will handle the device, its name and the eventual device parameters.
The device string is built with a printf-like syntax.
The syntax is:
bus:device_identifier,arg1=val1,arg2=val2
where 'bus:' is the bus name followed by any character separator. The bus
name is optional. If no bus name is specified, each bus will attempt to
recognize the device identifier. The first one to succeed will be used.
Examples:
pci:0000:05.00.0,arg=val 05.00.0,arg=val vdev:net_ring0
Parameters
format Format string describing a device.
Returns
- 0 on success.
- Negative errno on error.
int void rte_devargs_reset (struct rte_devargs * da)¶
Free resources in devargs.
Parameters
int rte_devargs_insert (struct rte_devargs ** da)¶
Insert an rte_devargs in the global list.
Parameters
Returns
- 0 on success
- Negative on error.
int rte_devargs_add (enum rte_devtype devtype, const char * devargs_str)¶
Add a device to the user device list See rte_devargs_parse() for details.
Parameters
devargs_str The arguments as given by the user.
Returns
- 0 on success
- A negative value on error
int rte_devargs_remove (struct rte_devargs * devargs)¶
Remove a device from the user device list. Its resources are freed. If the devargs cannot be found, nothing happens.
Parameters
Returns
unsigned int rte_devargs_type_count (enum rte_devtype devtype)¶
Count the number of user devices of a specified type
Parameters
Returns
void rte_devargs_dump (FILE * f)¶
This function dumps the list of user device and their arguments.
Parameters
struct rte_devargs* rte_devargs_next (const char * busname, const struct rte_devargs * start)¶
Find next rte_devargs matching the provided bus name.
Parameters
start Starting iteration point. The iteration will start at the first rte_devargs if NULL.
Returns
Author¶
Generated automatically by Doxygen for DPDK from the source code.
Fri Dec 15 2023 | Version 23.11.0 |